home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / app / RegDialog.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  8.3 KB  |  281 lines

  1. package com.extensibility.app;
  2.  
  3. import com.extensibility.rock.RDialog;
  4. import com.extensibility.rock.Screen;
  5. import com.extensibility.util.Security;
  6. import java.awt.Component;
  7. import java.awt.Container;
  8. import java.awt.Dialog;
  9. import java.awt.FlowLayout;
  10. import java.awt.Font;
  11. import java.awt.Frame;
  12. import java.awt.GridBagConstraints;
  13. import java.awt.GridBagLayout;
  14. import java.awt.Insets;
  15. import java.awt.Window;
  16. import java.util.GregorianCalendar;
  17. import javax.swing.JButton;
  18. import javax.swing.JDialog;
  19. import javax.swing.JLabel;
  20. import javax.swing.JPanel;
  21. import javax.swing.JTextArea;
  22. import javax.swing.JTextField;
  23.  
  24. public class RegDialog extends RDialog {
  25.    JLabel art;
  26.    JTextArea intro = UI.createTextArea(false);
  27.    JLabel lblName = new JLabel();
  28.    JTextField fldName = UI.createTextField();
  29.    JLabel lblOrg = new JLabel();
  30.    JTextField fldOrg = UI.createTextField();
  31.    JLabel lblEmail = new JLabel();
  32.    JTextField fldEmail = UI.createTextField();
  33.    JLabel lblPhone = new JLabel();
  34.    JTextField fldPhone = UI.createTextField();
  35.    JLabel lblSN = new JLabel();
  36.    JTextField fldSN = UI.createTextField();
  37.    JButton btnRegister = new JButton();
  38.    JButton btnTrial;
  39.    JButton btnQuit = new JButton();
  40.    boolean canceled;
  41.    int situation;
  42.    public static final int VALID = 999;
  43.    public static final int WELCOME = 0;
  44.    public static final int EXPIRED = 1;
  45.    public static final int INVALID = 2;
  46.    public static final int REREGISTER = 3;
  47.    public static final int OFFLINE = 4;
  48.    public static final int EXHAUSTED = 5;
  49.    public static final int OFFLINE_30DAY = 6;
  50.  
  51.    public RegDialog(Frame var1, int var2, String var3, String var4, String var5, String var6, String var7) {
  52.       super(var1, true);
  53.       this.situation = var2;
  54.       this.prepare(var2);
  55.       if (var3 != null) {
  56.          this.fldName.setText(var3);
  57.       }
  58.  
  59.       if (var4 != null) {
  60.          this.fldOrg.setText(var4);
  61.       }
  62.  
  63.       if (var5 != null) {
  64.          this.fldSN.setText(var5);
  65.       }
  66.  
  67.       if (var6 != null) {
  68.          this.fldEmail.setText(var6);
  69.       }
  70.  
  71.       if (var7 != null) {
  72.          this.fldPhone.setText(var7);
  73.       }
  74.  
  75.       ((JDialog)this).setDefaultCloseOperation(0);
  76.    }
  77.  
  78.    public RegDialog(Frame var1, int var2) {
  79.       super(var1, true);
  80.       this.situation = var2;
  81.       this.prepare(var2);
  82.    }
  83.  
  84.    public String getName() {
  85.       return this.fldName.getText();
  86.    }
  87.  
  88.    public String getOrg() {
  89.       return this.fldOrg.getText();
  90.    }
  91.  
  92.    public String getEmail() {
  93.       return this.fldEmail.getText();
  94.    }
  95.  
  96.    public String getPhone() {
  97.       return this.fldPhone.getText();
  98.    }
  99.  
  100.    public String getSN() {
  101.       return this.fldSN.getText();
  102.    }
  103.  
  104.    protected void doTimeTrial(int var1) {
  105.       this.fldSN.setText(Security.generateRegCode8(BaseApplication.getApplication().getRegVersion(), 32766, new GregorianCalendar(), var1, (byte)0));
  106.       this.doRegister();
  107.    }
  108.  
  109.    protected void doTrial() {
  110.       this.fldSN.setText(Security.generateRegCode8(BaseApplication.getApplication().getRegVersion(), 32766, new GregorianCalendar(), 0, Security.LAUNCH_LIMIT_MASK));
  111.       this.doRegister();
  112.    }
  113.  
  114.    protected void doRegister() {
  115.       if (this.getName().length() != 0 && this.getOrg().length() != 0 && this.getPhone().length() != 0 && this.getEmail().length() != 0) {
  116.          if (this.getSN().equals("mint")) {
  117.             this.fldSN.setText(Security.generateRegCode8(BaseApplication.getApplication().getRegVersion(), 32767, new GregorianCalendar(), 45, (byte)0));
  118.          } else if (this.getSN().equals("shilo")) {
  119.             this.fldSN.setText(Security.generateRegCode8(BaseApplication.getApplication().getRegVersion(), 32762, new GregorianCalendar(), 45, (byte)0));
  120.          } else if (this.getSN().equals("9B51-1123-5080-8A0B")) {
  121.             this.fldSN.setText(Security.generateRegCode8(BaseApplication.getApplication().getRegVersion(), 32762, new GregorianCalendar(), 30, Security.EXCELLON_30DAY_MASK));
  122.             ((Component)this).setVisible(false);
  123.          } else if (!Security.createRegCode(BaseApplication.getApplication().getRegVersion(), this.getName(), this.getOrg(), this.getSN()).isValid()) {
  124.             DialogFactory.stop(this, UI.getString("stop.sn.invalid"));
  125.          } else if (Security.createRegCode(BaseApplication.getApplication().getRegVersion(), this.getName(), this.getOrg(), this.getSN()).isBizTalkOnly()) {
  126.             ((Component)this).setVisible(false);
  127.          } else if (Security.createRegCode(BaseApplication.getApplication().getRegVersion(), this.getName(), this.getOrg(), this.getSN()).isExcellon30Day()) {
  128.             ((Component)this).setVisible(false);
  129.          } else {
  130.             Security var1 = Security.createRegCode(BaseApplication.getApplication().getRegVersion(), this.getName(), this.getOrg(), this.getSN());
  131.             ((Component)this).setVisible(false);
  132.          }
  133.       } else {
  134.          DialogFactory.stop(this, UI.getString("stop.name.or.co.or.em.or.ph.blank"));
  135.       }
  136.  
  137.    }
  138.  
  139.    public void setReason(int var1) {
  140.       this.intro.setText(String.valueOf(String.valueOf(String.valueOf(String.valueOf(String.valueOf(String.valueOf(UI.getString(String.valueOf("dialog.reg.").concat(String.valueOf(var1)))).concat(String.valueOf(System.getProperty("line.separator")))).concat(String.valueOf(System.getProperty("line.separator")))).concat(String.valueOf(UI.getString(String.valueOf("dialog.reg.msg.").concat(String.valueOf(var1)))))).concat(String.valueOf(System.getProperty("line.separator")))).concat(String.valueOf(System.getProperty("line.separator")))).concat(String.valueOf(UI.getString("dialog.reg.contact"))));
  141.    }
  142.  
  143.    protected void prepare(int var1) {
  144.       ((Dialog)this).setTitle(UI.getString("dialog.reg.title"));
  145.       Font var2 = this.lblName.getFont();
  146.       this.art = new JLabel(UI.getIcon("register.gif"));
  147.       this.intro.setFont(var2);
  148.       this.intro.setBackground(((JDialog)this).getContentPane().getBackground());
  149.       this.setReason(var1);
  150.       this.lblName.setText(UI.getString("dialog.reg.name.label"));
  151.       this.lblOrg.setText(UI.getString("dialog.reg.org.label"));
  152.       this.lblEmail.setText(UI.getString("dialog.reg.email.label"));
  153.       this.lblPhone.setText(UI.getString("dialog.reg.phone.label"));
  154.       this.lblSN.setText(UI.getString("dialog.reg.sn.label"));
  155.       this.fldSN.setText(UI.getString("dialog.reg.sn.default"));
  156.       this.btnRegister.setText(UI.getString("dialog.reg.register"));
  157.       this.btnRegister.addActionListener(new 1(this));
  158.       this.btnRegister.setMnemonic(UI.getMnemonic("dialog.reg.register"));
  159.       if (var1 == 4) {
  160.          this.btnTrial = new JButton();
  161.          this.btnTrial.setText(UI.getString("dialog.reg.trial"));
  162.          this.btnTrial.addActionListener(new 2(this));
  163.          this.btnTrial.setMnemonic(UI.getMnemonic("dialog.reg.trial"));
  164.       } else if (var1 == 6) {
  165.          this.btnTrial = new JButton();
  166.          this.btnTrial.setText(UI.getString("dialog.reg.trial.30day"));
  167.          this.btnTrial.addActionListener(new 3(this));
  168.          this.btnTrial.setMnemonic(UI.getMnemonic("dialog.reg.trial.30day"));
  169.       }
  170.  
  171.       if (this.getSituation() == 3) {
  172.          this.btnQuit.setText(UI.getString("dialog.cancel"));
  173.          this.btnQuit.addActionListener(new 4(this));
  174.          this.btnQuit.setMnemonic(UI.getMnemonic("dialog.cancel"));
  175.       } else {
  176.          this.btnQuit.setText(UI.getString("dialog.quit"));
  177.          this.btnQuit.addActionListener(new 5((RegDialog)null));
  178.          this.btnQuit.setMnemonic(UI.getMnemonic("dialog.quit"));
  179.       }
  180.  
  181.       ((JDialog)this).getContentPane().setLayout(new GridBagLayout());
  182.       GridBagConstraints var3 = new GridBagConstraints();
  183.       var3.insets = new Insets(16, 16, 0, 16);
  184.       var3.gridx = 0;
  185.       var3.gridy = 0;
  186.       var3.gridheight = 11;
  187.       ((JDialog)this).getContentPane().add(this.art, var3);
  188.       var3.anchor = 17;
  189.       var3.gridx = 1;
  190.       var3.gridheight = 1;
  191.       ((JDialog)this).getContentPane().add(this.intro, var3);
  192.       var3.gridy = 1;
  193.       ((JDialog)this).getContentPane().add(this.lblName, var3);
  194.       var3.gridy = 2;
  195.       var3.insets.top = 4;
  196.       var3.fill = 2;
  197.       ((JDialog)this).getContentPane().add(this.fldName, var3);
  198.       var3.fill = 0;
  199.       var3.insets.top = 16;
  200.       var3.gridy = 3;
  201.       ((JDialog)this).getContentPane().add(this.lblOrg, var3);
  202.       var3.gridy = 4;
  203.       var3.insets.top = 4;
  204.       var3.fill = 2;
  205.       ((JDialog)this).getContentPane().add(this.fldOrg, var3);
  206.       var3.fill = 0;
  207.       var3.insets.top = 16;
  208.       var3.gridy = 5;
  209.       ((JDialog)this).getContentPane().add(this.lblEmail, var3);
  210.       var3.gridy = 6;
  211.       var3.insets.top = 4;
  212.       var3.fill = 2;
  213.       ((JDialog)this).getContentPane().add(this.fldEmail, var3);
  214.       var3.fill = 0;
  215.       var3.insets.top = 16;
  216.       var3.gridy = 7;
  217.       ((JDialog)this).getContentPane().add(this.lblPhone, var3);
  218.       var3.gridy = 8;
  219.       var3.insets.top = 4;
  220.       var3.fill = 2;
  221.       ((JDialog)this).getContentPane().add(this.fldPhone, var3);
  222.       var3.fill = 0;
  223.       var3.insets.top = 16;
  224.       var3.gridy = 9;
  225.       ((JDialog)this).getContentPane().add(this.lblSN, var3);
  226.       var3.gridy = 10;
  227.       var3.insets.top = 4;
  228.       var3.fill = 2;
  229.       ((JDialog)this).getContentPane().add(this.fldSN, var3);
  230.       var3.fill = 0;
  231.       var3.insets.top = 16;
  232.       JPanel var4 = new JPanel(new FlowLayout(2, 16, 4));
  233.       ((Container)var4).add(this.btnQuit);
  234.       if (this.btnTrial != null) {
  235.          ((Container)var4).add(this.btnTrial);
  236.       }
  237.  
  238.       ((Container)var4).add(this.btnRegister);
  239.       var3.gridy = 11;
  240.       var3.anchor = 13;
  241.       var3.insets.bottom = 16;
  242.       ((JDialog)this).getContentPane().add(var4, var3);
  243.       this.intro.setSize(300, 100);
  244.       ((Window)this).pack();
  245.       Screen.centerInScreen(this);
  246.    }
  247.  
  248.    public boolean userCanceled() {
  249.       return this.canceled;
  250.    }
  251.  
  252.    int getSituation() {
  253.       return this.situation;
  254.    }
  255.  
  256.    public void addNotify() {
  257.       super.addNotify();
  258.       if (this.fldName.getText().length() == 0) {
  259.          this.fldName.requestFocus();
  260.       } else if (this.fldOrg.getText().length() == 0) {
  261.          this.fldOrg.requestFocus();
  262.       } else if (this.fldEmail.getText().length() == 0) {
  263.          this.fldEmail.requestFocus();
  264.       } else if (this.fldPhone.getText().length() == 0) {
  265.          this.fldPhone.requestFocus();
  266.       } else if (this.fldSN.getText().length() == 0) {
  267.          this.fldSN.requestFocus();
  268.       } else {
  269.          this.fldName.requestFocus();
  270.       }
  271.  
  272.       ((RDialog)this).installEscape(this.btnQuit);
  273.       ((RDialog)this).installDefault(this.btnRegister);
  274.       ((RDialog)this).installDefault(this.fldName);
  275.       ((RDialog)this).installDefault(this.fldOrg);
  276.       ((RDialog)this).installDefault(this.fldEmail);
  277.       ((RDialog)this).installDefault(this.fldPhone);
  278.       ((RDialog)this).installDefault(this.fldSN);
  279.    }
  280. }
  281.